package cn.itcast.controller;

import cn.itcast.domain.company.Company;
import cn.itcast.service.company.CompanyService;
import com.alibaba.dubbo.config.annotation.Reference;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;

@Controller
public class ApplyController {
    /**
     *  在第一次请求服务提供者的时候，创建相应的连接和测试
     *      由于服务提供者和消费者同时重启
     *      服务气提供者可能没有及时响应
     *      *服务消费者而言 ： 重试机制，默认重试2次
     */
    @Reference
    private CompanyService companyService;

    /**
     *  企业申请
     *      通过dubbo远程调用dubbo服务提供者
     *      将页面输入的企业信息，保存到数据库中
     */
    @RequestMapping("/apply")
    public  @ResponseBody String apply(Company company){
        //使用dubbo远程调用
        try{
            companyService.save(company);
            return "1";
        }catch(Exception e){
            e.printStackTrace();
            return "0";
        }

    }

}
